 SBTL 'MLI Revision History'
******************************************************************
*                                                                *
*                       C A U T I O N S                          *
*                                                                *
* 1.  In the language card area, the $D000 areas overlay.  To    *
*     determine which bank is in requires that the main bank     *
*     has a CLD instruction ($D8) at location $D000 and the      *
*     alternate bank must not.                                   *
*                                                                *
* 2.  Location $E000 is used to determine the state of ROM vs.   *
*     language card.  Therefore, the values of $E000 in the MLI  *
*     and in the ROM MUST differ.                                *
*                                                                *
* 3.  In the file MEMMGR, the routines CALLDISP, RAMDRVR and     *
*     DOBUS each must access the other $D000 bank.  Therefore,   *
*     they MUST reside ABOVE $E000 in the language card area.    *
*                                                                *
* 4.  In order to tell the difference between a Disk II with a   *
*     DEVID of 0 and a Ram-based driver with a DEVID of 0, the   *
*     Disk II routines MUST start on a page boundary and the     *
*     ram-based driver caller (routine RAMDRVR in file MEMMGR)   *
*     MUST NOT start on a page boundary.                         *
*                                                                *
* 5.  In the ram disk driver (file RAM), the byte that assembles *
*     into location $FF58 MUST be a $60 (RTS) so that the usual  *
*     routine to determine an I/O card's slot (by JSR $FF58)     *
*     will still work even if the Language card is switched in.  *
*                                                                *
* 6.  RWTS calling routine at $FF90 is hard coded at that        *
*     address.  If /RAM driver moves or expands, the routine     *
*     must be moved and the dummy RWTS entry routine in XDOSMLI  *
*     must be changed.                                           *
*                                                                *
* 7.  If the ram disk driver is to be moved (to make room more   *
*     code), the value of the symbol Srce must be updated to     *
*     reflect the change.  It is found in the file 'RAM' and     *
*     should point to where the basic builder 'build.prodos'     *
*     loads the RAM driver into memory.                          *
*                                                                *
* 8.  Any changes in the size of PRODOS/8 must be accompanied    *
*     by changes in P/16 load information... the size is hard    *
*     coded there.                                               *
*                                                                *
* 9.  WARNING!  There are at least four absolute patches in p8   *
*     from pquit and p16.  (1) Pquit "CallDisp" about p8 FCE3    *
*     (2) P16 ChangePath "TOTENT" about p8 FE8A                  *
*     (3) P16 Entry/IsItOpen about p16 96fc about p8 EFA3        *
*     "TSTOPEN"  (4) Pquit's PLOADER direct patch into p8's      *
*     block READ/WRITE dispatch "godev"                          *
*     All of these must be looked at if there are any changes to *
*     p8.                                                        *
*                                                                *
******************************************************************
 PAGE
******************************************************************
*
* NOTE: After each revision is made, the splash screen and the value
*       of KVERSION in the Global Page must be updated to reflect the
*
* Ver 1.0 - Written by J.R. Huston
*         - Updated and released by Dale M. Arends, Dec. 1983
*
* Ver 1.0.1 - by Dale M. Arends, January 1, 1984
*         1.  Bug in status call when testing write protect fixed.
*               (File: READ.WRITE)
*
* Ver 1.0.1A01 - Dale M. Arends, January 20, 1984
*         2.  Force FLUSH of FCB after EOF cutback.
*               (File: CLOSE.EOF)
*
* Ver 1.0.2 - Dale M. Arends, February 7, 1984
*         3.  Replace LDAs with BITs in Interrupt entry area of
*             Global page so it won't destroy Accumulator.
*               (Files: GLOBALS)
*         4.  Fixed bug in Disk core routines so that motor is
*             certain to shut off after recal on an error.
*               (File: XRW1)
*
* Ver 1.0.2A01 - Dale M. Arends, February 13, 1984
*         5.  Rearranged MLI layout within Language Card.
*               (All Files Affected)
*         6.  Rearranged entry to XRW routines to make room for 
*             a CLD as first byte.  This is necessary since XRW 
*             routines are now at $D000 and the CLD flags bank as 
*             Main $D000 space.  Also added check for valid call
*             number (0-3).  (Both XRW files affected.)
*
* Ver 1.0.2A02 - Dale M. Arends, April 4, 1984
*         7.  Rewrote machine ID routine to allow for Phylums of
*             machines.    Ranges:  0n - //c
*                                   4n - ???
*               (File: PROLDR)      8n - ???
*                                   En - //e
*
*         8.  Removed support for boot in 48K machines.
*               (File: PROLDR)
*
* Ver 1.1XA01 - Dale M. Arends, May 3, 1984 
*         9.  Modified Interrupt routine to allow for new ROMs in //c
*             and //e machines.
*               (Files: PROLDR, EQUATES, GLOBALS, XDOSMLI)
*        10.  Removed check for OS version number in file OPEN routine.
*               (File: POSN.OPEN)
*        11.  Incremented KVERSION number in Global page.
*               (Files: GLOBALS)
*        12.  Modified DEVSRCH routine to correctly reflect the
*             presence of any 80-col card following established
*             signature byte protocol.
*               (File: DEVSRCH)
*
* Ver 1.1XA02 - Dale M. Arends, May 11, 1984
*        13.  Added routine to allow for firmware in slot 3 to be
*             enabled. In //e, internal $C300 firmware is enabled
*             if no ROM in slot 3.  This is necessary for interrupts
*             and BRKs to work.  NOTE: any ROMs in slot 3 MUST support
*             the 80-column interrupt and BRK entry points or an
*             interupt or BRK will cause a system hang.
*               (File: PROLDR)
*        14.  Added routine to turn off all disk motor phases prior
*             to SEEKing a track on a Disk II call.
*               (File: XRW2)
*
* Ver 1.1XA02 renamed Ver 1.1 - Dale M. Arends, June 14, 1984
*
* Ver 1.1 - by Dale M. Arends (New date in splash screen 7-19-84)
*        15.  Added routine for accessing user installed drivers
*             located in AUX Language Card.
*               (Files: PROLDR, MEMMGR)
* Ver 1.1 - by Dale M. Arends (New date in splash screen 08-17-84)
*        16.  Added work-around for bug when accessing /RAM after it
*             has been removed from DEVLST.
*               (File: NEWFNDVOL)
*        17.  Reduced the RAM DISK by 1 block to protect the interrupt
*             vector area of the Aux Language Card.  Interrupt vectors
*             installed in the Aux Language Card at boot time.
*               (File: RAM, PROLDR)
*
* Ver 1.1.1 - by Dale M. Arends (New date in splash screen 9-18-84)
*        18.  Fixed routine in RSETPHSE to map into Drive 1.
*               (File: XRW2)
*        19.  Rewrote Machine ID routine to give I/O precedence to
*             an identifiable 80-column card in Slot 3.
*               (File: PROLDR)  (See #12 above.)
*
* Ver 1.2XA01 - by Dale M. Arends - 10/3/84
*        20.  Added MLI Call for AppleBus and driver calling code.
*              (Files: EQUATES, PROLDR, XDOSMLI, MEMMGR, DATATBLS)
*        21.  Fixed bug in error return of Ram Disk Driver.
*              (File: RAM)
*        22.  Assigned a SYSTEM ERROR when error occurs in deallocating
*             blocks from a TREE file.
*              (File: DETREE)
*        23.  Fixed bug in zeroing of a VCB when trying reallocating
*             a previously used VCB.
*              (File: NEWFNDVOL)
*        24.  Modified Loader to automatically install up to 4 drives if
*             the Smart Driver follows the defined $CnFE bit protocol.
*              (File: DEVSRCH)
*        25.  Modified MLI entry routines to disable interrupts until
*             after MLIACTV flag is set and CMDADR is set up.
*             (Note: change is not noted in source code.)
*              (Files: GLOBALS, XDOSMLI)
*
* Ver 1.2XA02 - Lost in the Wilds of the San Jose Triangle.
*        (Go to the Bermuda Triangle and turn left.)
*
* Ver 1.2XA03 - by Dale M. Arends - 1/24/85
*        26.  Modified Dispatcher to treat the DELETE key as a
*              Back Space (Left Arrow).
*              (File: SEL)
*
* Ver 1.2XA04 - by Dale M. Arends - 1/28/85
*        27.  Modified splash screen to reflect version control loss.
*              (File: DEVSRCH)
*
* Ver 1.2XA05 - by Kerry Laidlaw - 2/11/85
*        28.  Modified the ONLINE call to zero out a VCB corresponding
*             to a disconnected device.  Previously if a user followed
*             our method on disconnecting a device by removing the
*             volume's device number in the device list, and removing
*             the device handler's address from the device vector table,
*             ProDOS never removed the corresponding VCB entry.  Now
*             in addition to the above, the user can then issue a 
*             specific ONLINE call to the user disconnected device.  A 
*             no device connected error ($28) will be returned in the 
*             accumulator, but the VCB will be taken off line.
*              (File: BFMGR)
*
* Ver 1.2XA06 - by Kerry Laidlaw - 3/20/85
*        29.  Fixed bug in PROLDR file that did not swap back correct 
*             bank.
*              (File:PROLDR)
*        30.  Added the "real" AppleTalk drivers that will reside in  
*             bank 2, $D400-$DFFF, in the Main Language Card.
*              (File:BUS)
*
* Ver 1.2xa08 - by Kerry Laidlaw - 5/15/85
*        31.  Updated Copyright Notices in source & in splash screen.
*              (Files:MLI,GLOBALS)
*        32.  Set KVERSION byte in global page to $82.  This version
*             ID byte is interpreted as follows:
*                The low 7 bits contain the ProDOS version number.
*                The high bit is set if this version of ProDOS 
*                supports AppleTalk.
*              (Files:GLOBALS)
*        33.  Removed 4 drive install code (see #24 above) to prevent
*             problems with applications.  Some applications would 
*             interpret unit numbers as mapping to physical slots.  Thus
*             even though unit numbers may only have a logical mapping,
*             these applications would assume a disk card is in the 
*             physical slot.  Therefore if an I/O card is in that slot,
*             the application wouldn't look for it.
*              (File:DEVSRCH)
*
*        34.  Commented out one to many pla's from the dispatcher
*             calling routine.
*              (File:MEMMGR)
*
*        35.  Added an unclaimed (spurious) interrupt handler. It allows
*             255 unclaimed interrupts before going to system death.
*              (File:XDOSMLI)
*
*        36.  Removed low res mode evocation when displaying system
*             death messages.  (It was buggy to begin with and it saves
*             me 6 bytes:lda c083,lda c086).
*             Also removed ability to display system death message 
*             without '-ERR xx' as part of the message.  This was done
*             to save space.  The system itself never used this ability
*             and hopefully no one else did either....
*              (Files:XDOSMLI,DATATBLS)
*
*        37.  Since the JSPARE vector in the global page was the only 
*             vector to the SYS.RTS routine which will halt the system
*             with an 'INSERT SYSTEM DISK AND RESTART' message), and 
*             JSPARE is overwritten by the loader with the dispatcher
*             calling vector, the 6 bytes starting at the SYS.RTS label
*             are now considered free space.
*              (File:GLOBALS)
* 
*        38.  Deleted needless code that relocated Atalk drivers twice.
*             Also modified parameters that relocate interrupt file
*             MLI.3.
*              (File:PROLDR)
*
* Ver 1.2xa09 - by Kerry Laidlaw - 5/30/85
*        39.  Fixed bug in dispatcher that would trash screen holes
*             when code is called while in 80 column mode.  (Previously
*             HOME was called without the window size being updated to
*             a 40 column size.  Therefore the wrong BASCALC's were
*             done and zap!).  Now, I call SETTXT before calling home
*             which will set text mode and a 40 column window. 
*             I also commented out a lda #0 to reclaim needed space.
*              (File:SEL)
*
*        40.  Made code that zeroed user's index block in his I/O
*             buffer into a subroutine.  Saved 8 bytes.
*              (Files:READ.WRITE,POSN.OPEN)
*
*        41.  Set a flag in the DELETE code to signal the DETREE routine
*             NOT to zero index blocks upon deallocation.  This was done
*             so developers could write file recovery routines.
*              (Files:DESTROY,DETREE,WRKSPACE)
*
* Ver 1.2xa10 - by Kerry Laidlaw - 6/4/85
*        42.  Replaced two lda's and bit's with one sta to hit the bank
*             switches (c083,c08b).  Note: I am counting on the fact
*             that once into ProDOS, the LC is already in a r/w state.
*             Thereafter, you only have to hit the bank switch once to
*             switch banks and maintain a r/w state in the new bank.
*             Also note that this was done to preserve zero flag status
*             upon return from the network drivers.  The previous BIT's
*             would destroy that status.
*              (File:MEMMGR)
*
*        43.  Forced the /RAM driver to return zeros on block read 
*             requests to block 7, and do nothing on block writes to
*             block 7.  Previously, a block write to block 7 (an 
*             operation that is invalid anyway), would bomb out into
*             the monitor.  Read and writes to blocks 0,1,4,5,6, and
*             now 7 are all treated in this manner.
*              (File:RAM)
*
* Version 1.2xa11 - by Kerry Laidlaw 6/12/85
*        44.  Removed disabling of interrupts from loader.  Therefore 
*             the whether the processor allows interrupts or not is 
*             left up to the monitor.
*              (File:DEVSRCH)
*
* Version 1.2xa12 - by Kerry Laidlaw 6/21/85
*        45.  Initialized main stack to $ff and set up $101 in Aux
*             memory (if it is there) to $ff so programs using the
*             aux stack will be started off correctly.
*              (File:PROLDR)
*
*        46.  Fixed 2 bugs in XDOSMLI file: 
*             1) After processor is pulled to re-enable interrupts,
*                a CLD is now done to keep out of decimal mode.
*             2) Turning "off" MLIACTIVE flag is now done correctly
*                with an ASL after and initial ROR instead of the 
*                original LSR.
*
* New version id for fear of version confusion 12/13/85...
* Version 1.2 exp 01 - by Kerry Laidlaw 12/13/85
*        47.  The OPEN call will now return error $4B (unsupported or
*             incorrect storage type) instead of $4A (incompatible file
*             format for this version) when determining if it is legal
*             to open a file of a particular storage type.
*               (File: POSN.OPEN)
*
* Version 1.2 exp 02 - by Kerry Laidlaw 2/3/86
*        48.  Splash screen now shows "PRODOS 8" instead of "PRODOS".
*             Fixed a bug in the read call that would return the
*             incorrect number of bytes transferred when newline was
*             enabled.  If the requested number of bytes was greater
*             than $00FF, AND the number of bytes in the file AFTER the
*             newline character was READ was a multiple of $100, then
*             the number of bytes reported transferred by ProDOS was
*             equal to the correct number of transferred bytes + $100.
*               (Files: DEVSRCH, READ.WRITE)
*
*        49.  Removed fix from rev #41 that prevented index blocks 
*             from being zeroed after files were deleted.
*              (Files: DESTROY, DETREE, WRKSPACE)
*
*        50.  Added new clock driver to read the Cortland builtin clock.
*             The loader will now check for a Cortland to decide which
*             clock driver (slot or built-in) to install.
*             Stopped messing with slot 3 rom space if running on a 
*             Cortland.  The Control Program lets the user determine
*             internal vs. external slot space.
*             Also commented out bus references in equates file, since
*             it has now been decided that there be no Appletalk drivers
*             in this version of ProDOS8.
*              (Files: EQUATES, PROLDR, CCLOCK)
*
* Version 1.2 exp 03 - by Kerry Laidlaw 2/20/86
*        51.  Updated slot clock driver's year lookup table.
*             The year can now be calculated thru 1991.
*              (File: TCLOCK)
*
* Version 1.2 exp 04 - by Kerry Laidlaw 3/07/86
*        52.  Updated Cortland clock driver to adjust to new 
*             miscellaneous toolset call number.
*
* Version 1.2 exp 05 - by Kerry Laidlaw 3/13/86
*        53.  Updated DEVSRCH to special case a Smartport card
*             in slot 5 to allow 4 Smartport units. Driver entry 
*             addresses for these Smartport units would be placed in
*             the ProDOS global page's slot 5 and slot 2 driver vectors.
*             ProDOS unit numbers $50 & $D0 (slot 5, drives 1 and 2)
*             will correspond to Smartport units 1 and 2.  ProDOS unit
*             numbers $20 and $A0 (Slot 2 drives 1 and 2), will
*             correspond to Smartport units 3 and 4.
*              (File: DEVSRCH) 
*
* Version 1.2 exp 06 - by Kerry Laidlaw 04/03/86
*        54.  Updated Smartport unit special casing (see rev note #53)
*             to ensure the extra two unit numbers to have a $B in
*             the low nibble so the FILER won't have any problems
*             with formatting.  Also set version id byte (KVERSION) in
*             global page to $02 representing version 1.2.
*              (Files: DEVSRCH, GLOBALS)
*
* Version 1.2 D1 - by Kerry Laidlaw 06/22/86
*        55.  Crunched the dispatcher code to make room so the correct
*             soft switches and monitor routines could be called to
*             go to 40 columns and display text.
*              (File: SEL)
*
*        56.  Added feature to loader that will load and JSR to the
*             file "ATINIT" in the booting volume's root directory.
*             If the file is not found, no error is reported, and
*             the ".SYSTEM" file is executed as normal.  But if an
*             I/O error other than file not found is encountered 
*             or if the file type is not the ATINIT type of $f8
*             while loading "ATINIT", a fatal error is displayed.
*              (File: PROLDR)
*
*        57.  Added an alternate loader entry point.
*             The new entry is at $2003 and is intended to be called
*             be called only by the network boot code when booting
*             over the net, and by ProDOS 16 v1.0 on the Apple //-16.
*             The loader through this entry point will
*             NOT load the ATINIT file and will NOT load the 
*             .SYSTEM file.  It will set up ProDOS and RTS back 
*             to the caller to this entry point.
*             Because of this feature, the initialization of the
*             stack done in rev Note #45, was taken out....
*              (File: PROLDR)
*
*        58.  Added code to set MACHID byte to indicate a clock 
*             was present when ProDOS is run on an Apple //-16.
*              (File: PROLDR)
*
* Version 1.2A1 - by Kerry Laidlaw 06/30/86
*        59.  ATINIT file official file type now checked for is 
*             $E2.
*              (File: PROLDR)
*
* Version 1.2A2 - by Mike Askins   08/25/86
*        60.  The device searching process has changed.  SmartPort
*             devices are only installed if they exist and Disk //s
*             are placed in the device list so that they have the
*             lowest priority in device scans.  This should regularize
*             device numbering and naming in ProDOS/16.  Note that this
*             change caused the loader to grow by 256 bytes, and
*             everything beyond devsrch is moved by one page.
*              (File: DEVSRCH)
*
* Version 1.2B1 - by Mike Askins   08/25/86 
*        61.  The loader now passes a flag to Cortland at $FEFF to
*             indicate that we're running on a Cortland.  At system
*             death, if we're on a Cortland, a zero is stuffed into
*             $C029 disabling super hires so that the user can see the
*             system death message.
*              (Files: PROLDR, XDOSMLI, WRKSPACE)
*
*        62.  A parameter os.boot is now passed to Cortland AppleTalk.
*             If it is a stand alone ProDOS/8 (not P8/16 config) a
*             zero is stored in $E100BD.  Two branches had to be
*             extended to accomodate the code which does this (these
*             are marked).
*              (File: PROLDR)
*
*        63.  Two DS directives were altered (" ,0 " added) so that
*             they generated bytes with a fixed value.  Successive
*             builds should now compare byte for byte EXCEPT for the
*             date string (around 1550 decimal into PRODOS file).
*              (File: SEL)
*
*        64.  The logic of the newly added SmartPort handler in the
*             loader has been changed to fix a bug in V1.2A2 which
*             prevents installation of SmartPort devices in any slot
*             OTHER than 5.  The check for slot five was moved down
*             past the installation of drives 1 and/or 2.
*              (File: DEVSRCH)
*
* Version 1.2B2 - by Mike Askins   09/06/86 
*        65.  A bug is fixed in the loader which caused disk devices
*            in slot 2 to conflict ungracefully with more than two  
*            devices in slot 5.  Now, if any disk device is detected
*            in slot 2, NO MORE THAN 2 units are installed in slot 5.
*             (File: DEVSRCH)
*
*        66.  The Cortland Clock Driver now sets main memory before
*            doing the call to the miscellaneous tools to read the
*            clock hardware.  The main/aux state is then restored.
*
* Version 1.2B3 - by Kerry Laidlaw 09/07/86 
*        67. Updated cclock routine to correct the anding of the
*            state register.
*             (File:CCLOCK)
*
* Version 1.2   - by Mike Askins   09/08/86 
*        No changes
*
* Version 1.2   - by Mike Askins   09/23/86
*        68. Inserted a patch into RELOC to fix a bug in the 1.0 GS
*            ROM which caused the internal CX ROM space to be left
*            mapped in after a boot failure on SmartPort.  See the
*            documentation in RELOC to find out why the patch was
*            placed here (it has nothing to do with the RELOCation
*            process!).
*
* Version 1.2   - by Kerry Laidlaw 09/23/86
*        69. Fixed a bug in the dispatcher that trashes screen when
*            executed with the prefix set to nil.
*            Previously when an error occured when the pathname
*            was checked, the message at the top of the screen
*            was redisplayed. Now we are jumping so the message
*            is not redisplayed.  It saves us 2 bytes....
*             (File:SEL)
*
* Version 1.3   - by Mike Askins, Fern Bachman - 10/17/86
*        70. The code that resets the phase lines for Disk //s has been
*            changed so that the phase clearing is done with a load, not
*            a store.  Stores to even numbered locations on the disk
*            hardware cause data bus contention which is just not cool.
*            The routine has been changed to access all 8 even locations
*            which not only clears the phases but forces read mode (as
*            well as 1st drive and motor off) on entry to the disk code.
*            DOS used to do this and ProDOS did not.  If for some reason
*            (copy protection, runaway programs) l7 was left high on
*            entry to the disk routines, and the disk routines checked
*            write protect with l6 high:  BINGO -- we're in write mode.
*            Forcing read mode initially leaves less to chance.
*            to assemble ProDOS8 with cross reference tables.
*        71. The file MLI was changed to allow ASM816 version 1.4.2 to
*            allow for cross reference listings to be generated.
*            Assembling the file MLI generates ProDOS8 without listings.
*            Assembling the file L.MLI generates PorDOS8 with a listing.
*            NOTE: A blank RAM disk card called /RAM1 must be installed
*                  in the system to cross references to be generated.
*        72. The 'date' directive was removed in the file DEVSRCH
*            and an ASC 'xx-xxx-xx' directive replaced it.
*
* Version 1.3   - by Ray Chiang   11/07/86
*        73. In reference to rev notes 41 and 49, index blocks now
*            have their contents flipped when the file is deleted
*            and their contents are fully zeroed when EOF cutback
*            occurs.  This technique allows scavenging programs to
*            possibly recover files that were accidently deleted.
*            Also the possibility of unclaimed blocks 'looking'
*            like valid index blocks is reduced.  Previous to this
*            revision, whole index blocks from tree files were
*            being released back into the disk.
*            (files: DESTROY,DETREE,WRKSPACE)
*
* Version 1.3   - by Fern Bachman 11/17/86
*        74. The SmartPort interface card (our Liron interface card)
*            does not set up its device chain unless a ProDOS call
*            is made to it.  Therefore in DEVSRCH where Mike makes
*            SmartPort calls the card is not setup yet so it returns
*            00 devices in its chain.  This results in the card/drives
*            never being seen by ProDOS.  To fix that we will now make
*            a ProDOS status call before SmartPort status calls.  This
*            should guarantee valid device counts.
*            (file: DEVSRCH)
*
* Version 1.4   - by Ray Chiang/Fern Bachman 02/03/87
*        75. Fix illegal 65C02 instruction in 6502 code.  ie change
*            the BRA to a BEQ instruction.
*
* Version 1.4   - by Mike Askins/Fern Bachman 02/12/87
*        76. Changed RSETPHSE routine to only clear the phase lines.
*            And we clear Q7 so no writes can accidently occur.
*
* Version 1.4  - by Ray Chiang/Mike Askins 03/23/87
*        77. Simple programming error in fix 76 .
*
* Version 1.4 - Ray Chiang 04/17/87
*        78. No changes, released to SCM
*
* Version 1.5d1 - Grady Ward 2 Sep 87
*         79.  Fixed overrun problem in READ.WRITE 
*              Also, changed p16 patch addresses
*
*         80.  Made call to DEVMGR surrounded by NOP's so that
*              it can be patched by p16 and pquit more easily
*              (for both cache and AppleTalk booting)
*
*
* Version 1.5d7 - Grady Ward 20 Nov 87 Summary of Changes
*         81.  Change to READ.WRITE in tstwprot to disable interrupts
*              if going to use DMGR (Caching)
*
*         82.  P8 code has been extensively moved about to make room
*              for patches to DMGR dispatch (approximately 14 bytes 
*              were needed for AppleTalk booting patches caching patches)
*
* Version 1.5d8 4-Dec-87
*
*          83.  Change some asc strings, like "system" uppercase.
*
* Version 1.5d11 20-Jan-88
*
*           84.  Took out $42 generic AppleTalk Call
*
* Version 1.5b2 16-Feb-88
*
*            85.  Restored asl mliactv to lsr in "exitmli"
*
* Version 1.5b3 1-Mar-88
*
*            86. Clear ESC in keyboard if booting on Apple //c
*                ("slow" down for Zip Chip)
* Version 1.6 14-Jun-88
*
*            87. Set up parallel pfixptr to fix
*                AppleTalk PFI misinterpretation
*                of two's comp prefix pointer
*
* Version 1.7 22-July-88
*
*            88.  When setting eof backwards, make sure
*                 volumes bitmaps are counted before inc
*                 free blocks
*
*            89.  When installing ramdisk, make sure slot3rom
*                 is preserved rather than overwritten
*
*            90.  In system death, check "cortflag" rather than
*                 "cortland" to ascertain what system we're on
*
*             91.  Waited to restore slot3 firmware until just before
*                  gquit is called at jspare
*
*             92.  Now permit invisible bit to be set with set file info
*                  (bit 2 of d.attr byte)
*
************************************************************************
*
*
* EdNet v1.0x01 - by Kerry Laidlaw - 6/5/85
*+++++++     The following changes are made to support transparent
*            file access for the AppleTalk network.  This version
*            will be the user (student) stations ProDOS.  It has been
*            decided that this version of ProDOS will only support 
*            128k systems.
*
*      EN1.  The RWTS routines are now running in LC, b2 above
*            the dispatcher code ($D400-$DAE9).  To do this the
*            loader was changed to load the RWTS routines into bank 2
*            starting at $d400, and a dummy RWTS entry at $D000 b1,
*            was entered which only does a CLD followed by a JMP $FF90.
*            The routine at $FF90 is at the end of the RAM code file
*            where a few extra bytes were dangling.  
* NOTE: FOR ANY FUTURE MAINTAINER of this code.  As of 5/88, all
* ProDOS 8, 16, and BASIC.SYSTEM bugs are archived as ProDOS bug
* in the B.R.C. archive, priority 5.  Please look there before
* making any changes to p8 or p16.  Grady Ward
*
*      EN2.  Modified the block file manager to go to the AppleTalk
*            command when the pathname corresponds to /ATALK.
*            The new DOATALK file will house all the AppleTalk interface
*            command handling.  
*            The MLI.BUILD BASIC program was updated to handle 7 more
*            pages of code in the MLI.2 file.
*             (Files:BFMGR,DATATBLS,DOATALK,WRKSPACE)
*
*      EN3.  Changed loader to relocate Atalk drivers to Aux LC.
*            Also changed ATP caller to go thru the "bridge" mechanism.
*            This bridge routine is so named because its purpose is to
*            get an entry address to ATP, FAP etc., as contained in
*            the address table labled ATALKTBL, and jsr to the
*            routine in the Aux LC.  This address table is 
*            located at the beginning of the ATP driver file COMMANDS.
*            At load time, this table is copied into space reserved
*            for it in the file XDOSMLI. 
*            Also, the ATP interrupt handler has been pre-installed 
*            into ProDOS in the file XDOSMLI.
*            The RPM STUB that will be called when characters are 
*            written to the AppleTalk card was placed in the file
*            MEMMGR.  The Loader now installs the hooks to the RPM
*            STUB in the AppleTalk card's screen holes.
*             (Files:PROLDR,MEMMGR,XDOSMLI,COMMANDS)
*
******************************************************
